package com.skyline.feed.dao;

import java.util.List;

import com.mongodb.DBCursor;
import com.skyline.feed.type.FeedType;

/**
 * 个人Feed的Dao
 * 
 * @author Jairus Chan
 * @version 0.1
 * 
 */
public interface PersonalFeedDao {

	/**
	 * 插入Feed
	 * 
	 * @param resourceId
	 *            资源的ID
	 * @param title
	 *            资源title
	 * @param content
	 *            内容
	 * @param providerId
	 *            提供者Id，在PersonalFeed中，就是feed所有者的Id
	 * @param providerNickname
	 *            提供者的昵称
	 * @param providerPortrait
	 *            提供者的头像
	 * @param ownerId
	 *            feed所有者的Id
	 * @param type
	 *            feed的类型
	 */
	public void insertFeed(Object resourceId, String title, String content, Long providerId, String providerNickname,
			String providerPortrait, Long ownerId, FeedType type);

	/**
	 * 查询某人在某一等级上的Feed（分页）
	 * 
	 * @param ownerId
	 *            所有者的Id
	 * @param current
	 *            当前记录
	 * @param level
	 *            等级
	 * @return
	 */
	public DBCursor queryFeeds(Long ownerId, Integer current, Integer level);

	/**
	 * 查询某一用户群在某一等级上某一时间断的所有Feed
	 * 
	 * @param ownerIds
	 *            用户们的ID
	 * @param level
	 *            等级
	 * @param lastQueryTime
	 *            上次查询的时间
	 * @return
	 */
	public DBCursor queryFeeds(List<Long> ownerIds, Integer level, Long lastQueryTime);
}
